\section{Evaluation}
\label{sec:evaluation}

\begin{figure*}
\centering
\subfigure[WiFi 802.11b/g/n]{\includegraphics[width=0.325\textwidth]{figure/E4DefaultVsADEPVsIALPL_WiFi.pdf}}
\subfigure[Bluetooth]{\includegraphics[width=0.325\textwidth]{figure/E4DefaultVsADEPVsIALPL_BT.pdf}}
\subfigure[Microwave oven]{\includegraphics[width=0.325\textwidth]{figure/E4DefaultVsADEPVsIALPL_MO.pdf}}
\caption{Performance of IALPL under various interference}
\label{fig:E4performanceDifferentIntefer}
\end{figure*}


\begin{figure*}
\centering
\subfigure[Clean environment]{\includegraphics[width=0.325\textwidth]{figure/E3DormCleanThree.pdf}}
\subfigure[Normal occupants' activities]{\includegraphics[width=0.325\textwidth]{figure/E3OfficeThreeDutyCycle.pdf}}
\subfigure[Controlled interference]{\includegraphics[width=0.325\textwidth]{figure/E3Dorm5MThreeDutyCycle.pdf}}
\caption{Performance under different network condition}
\label{fig:E3performancePlace}
\end{figure*}


To validate the efficiency of IALPL, we performed a serious of controlled and real-world experiments.
(1)We first conducted the experiments under different interference sources to validate IALPL's effectiveness of reducing false wakeup ratio by distinguishing ZigBee from the others.
(2) We then compare IALPL with sender-initiated MAC protocols, including the fixed-threshold and adaptive-threshold approaches.
(3) We compare IALPL with reciver-initiated MAC protocols to validate the energy efficiency of IALPL under various network conditions.
(4) We evaluate the performance of IALPL when integrated with CTP in a real-world deployment in an office.
(5) We also validate IALPL does not affect other network performances.

In all experiments, we implement IALPL on top of TelosB platform running the TinyOS 2.1.2 operating system.
We take BoX-MAC-2 and A-MAC as the representatives of sender-initiated and receiver-initiated MAC protocols.
BoX-MAC-2 is reconfigured with a preamble interval 2.8 ms and a CCA checking time 2.9 ms, consistent with the amendment of previous work \cite{bib:IPSN13EnergyLPL}.
Without specific explanation, the sleep interval is 512 ms and data rate is 1 packet/10 seconds.
That is: nodes check channel every 2 seconds and generate one packet every 5 minutes in BoX-MAC-2; nodes wake up and send a probe every 2 seconds and generate one packet every 5 minutes in A-MAC.
IALPL configures the CCA checking time 2.9 ms and the preamble interval 2.8 ms.



\subsection{Effectiveness under various situations}
To validate the effectiveness of IALPL under various situations, we perform experiments under different interference sources.
We deploy a pair of nodes in a controlled environment and put interference devices operated different technologies into the environment.
For WiFi interference, we deploy two computers generate 5 Mbps data by LanTraffic V2, and a TP-Link AP which sends out 802.11b/g/n data.
For Bluetooth interference, we employ a iPhone 5 and a Bluetooth headset, generating traffic by the phone call.
For Microwave oven, we place a Haier MJ-1870M1 microwave oven generating energy by heating a bowl of water.
Figure \ref{fig:E4performanceDifferentIntefer} shows the performance of different methods in various interference conditions.
In all situations, the false wakeup ratio of IALPL keeps low all the time while other threshold-based methods experience different degrees of false wakeup problem.
These results validate the effectiveness of IALPL's matching algorithm.
It reveals that IALPL overcomes false wakeup problem very well under various interference sources.



\subsection{Compare to sender-initiated MAC}
We first compare IALPL with sender-initiated MAC protocol, BoX-MAC-2, the default MAC protocol in TinyOS 2.1.2.
We perform three experiments under different environments, (1) under a wireless clean environment; (2) under the residents' regular activity; (3) under a controlled environment.
We record the total on/off time of the radio on each node and calculate the corresponding duty cycle.

We deploy a pair of nodes with IALPL on channel 26, which we confirm to be clean.
Figure \ref{fig:E3performancePlace} (a) plots the duty cycle of three methods.
The dashed line is theoretically optimal duty cycle.
All three methods show near optimal results. 
While IALPL results a 0.02\% higher duty cycle than the other two methods.
This is because Box-MAC-2 and ADEP compare the RSSI with the threshold to make judgement.
But IALPL needs to extract and calculate the features, consuming some additional matching time.
However, we argue that a 0.02\% higher baseline energy could save significant energy.
We will show this in the following results.

We then repeat the experiments in an office environment, under the residents' regular wireless activity.
We deploy three pairs of nodes with IALPL on channel 22, which overlaps with a WiFi AP operated on WiFi channel 11.
Figure \ref{fig:E3performancePlace} (b) shows IALPL achieve a much lower duty cycle than BoX-MAC-2 and ADEP.
It validates that the little higher baseline energy brings much more energy saving.


To test the methods under heavy interference, we also conduct the experiments under the controlled environments.
We deploy a pair of nodes with IALPL on channel 12, overlapping with WiFi channel 1, in a dormitory.
We deploy two computer generate 5 Mbps UDP data as interference. 
It is measured there is no other interference. 
Figure \ref{fig:E3performancePlace} (c) presents the experiment result.
ADEP has a high duty cycle at beginning because it uses default threshold when booting.
It takes time to adjust threshold according to the effective RSSI of incoming links, resulting a high starting duty cycle.
After receiving packets, a high threshold adopted in ADEP makes duty cycle decrease.
However, ADEP lose effectiveness for the interference with higher RSSI, resulting a stable duty cycle in the end.
IALPL still works well during the whole experiment time since it breaks the limitation of threshold and still avoids the interference with high RSSI based on RSSI sequence pattern. 


%The first pair runs BoX-MAC-2, the second pair runs ADEP and the last one runs IALPL simultaneously, eliminating the impacts of time-varying wireless conditions on experiment results.






\subsection{Compare to receiver-initiated MAC}
We compare IALPL with receiver-initiated MAC protocol, A-MAC, the state-of-the-art receiver-initiated MAC protocol.
We deploy a pair of nodes in an office environment and change sender's location to get various link qualities.
The experiment is repeated 10 times.
Each time contains two runs, one for A-MAC and another for IALPL.
Figure XXX presents the results of experiments.
When a link is reliable, A-MAC consumes less energy than IALPL due to the sender-initiated behavior of IALPL.
The energy consumed by preamble is more than the energy consumed by probes.
However, when link is not reliable, the duty cycle of A-MAC increases rapidly since the lose of probe packets keep senders awake for additional time.
On the other hand, IALPL has no such problem because low RSSI values will not change the patterns.
Therefore, it only has a little higher duty cycle due to the retransmissions when link qualities are poor.




%
%\subsection{Adaptive sampling slots}
%In the complex case where we discuss in Section XX (About the overlapping cases), the interference may bring additional sampling slots.
%We measures the sampling slots to presents IALPL can quickly judge whether there is ZigBee or not, while keep the false rate low.
%We reuse the experiments conducted above.
%Hence, we know the false rate is low.
%We keep a counter about sampling slots costed by each packet.
%Then we change the number of interference sources from 1 to many.
%
%We plot the average sampling slots costed by one packet in Figure XX.
%The expected result is even multiple devices, the sampling slots still keep low since the overlapping cases should not happen that much.

%
%\subsection{Effects of signal strength}
%The signal strength will not influence the accuracy of detection of ZigBee.
%This because no matter the interference or ZigBee has stronger strength, IALPL can distinguish ZigBee as long as they do not overlap.
%And in the case they overlap, if ZigBee has a stronger strength, the RSSI sequences will not be distorted very much, IALPL can still recognize it; if interference has a stronger strength or the signal of ZigBee and interference are comparable (RSSI sequence of ZigBee is distorted a lot), IALPL is not sure about ZigBee exists and will trigger adaptive sampling slots scheme to get a non-overlap sampling.
%And we claim that accuracy of detection will not decrease much because only when too many interference sources concurrently send out packets and distorts ZigBee sequence during the whole maximum sampling period, IALPL fails.
%
%
%Settings:
%Two nodes, one sender, one receiver.
%sender always on and send out one packet per X ms, where X equals the period in LPL.
%Control the distance of interference sources to get various interference situations.
%
%Plot the distance VS duty cycle figure to show false positive ratio is low.
%Expected result is despite of distance, duty cycle always remains low.


\subsection{Integration with CTP in real deployed system}
settings:
30-50 nodes form a network in office environment.
All settings are identical to default settings expect the CCA procedure.
Compare default, ADEP, and IALPL.

Metrics:

(1) duty cycle: chief optimizing goal.

(2) latency: overhead measurements.

(3) PRR: influence to network performance.


\subsection{No harm to other system performance}